#ifndef UI_H
#define UI_H

#include "mid/widgets/window.h"

#include <stdint.h>

#define MAX_WINDOW_DEPTH 2  // 最多两层菜单
#ifndef NULL
#define NULL (0)
#endif

typedef struct UIManager_t
{
    Window *winStack[MAX_WINDOW_DEPTH];
    Window *preWin;
    uint8_t windowCnt;
    char initilized;

    // 函数大写
    FuncInit Init;
    FuncUpdate Update;
    FuncEnterWindow EnterWindow;
    FuncBack Back;

} UIManager;

UIManager* GetUIMgr();

#endif  // UI_H